import os
import uuid
import shutil


class MyFiles:
    # 指定文件操作目录
    def __init__(self, upload_dir='./static/upload/'):
        self.up_dir = upload_dir

    # 创建文件夹
    def mk_dir(self, userid):
        # 判断文件夹是否存在，不存在创建
        path = self.up_dir + str(userid) + "/"
        if not os.path.exists(path):
            # 创建文件夹
            os.mkdir(path)

    # 文件重命名
    def rename(self, file):
        filename = uuid.uuid4().hex + os.path.splitext(file)[1]
        return filename

    # 查找指定目录下的所有文件
    def show_all(self, userid):
        files = os.listdir(self.up_dir + str(userid) + '/')
        return files

    # 删除文件
    def remove_file(self, userid, file):
        path = self.up_dir + str(userid) + '/' + file
        os.remove(path)

    # 删除整个目录
    def remove_dir(self, userid):
        # os.rmdir(self.up_dir+str(userid)+'/')
        path = self.up_dir + str(userid) + '/'
        # 判断文件夹是否存在
        if os.path.exists(path):
            # 存在删除文件夹及下面所有的文件
            shutil.rmtree(path)


myf = MyFiles()
# myf.remove_dir(11)
# myf.remove_file(11,'5g2.jpg')

# name = myf.rename('132424.jpg')
# print(name)

# files = myf.show_all(6)
# print(files)

# myf.mk_dir(6)
# myf.mk_dir(3)